feat: add standalone infinirt graph bridge#1351
Open
gongchensu wants to merge 13 commits into
Open
Conversation
8687b05 to
0b447d0
Compare
19 tasks
82310d0 to
8fc2af0
Compare
feat: add hygon operators for w8a8 9g
…ygon build: force wnoerr unused on hygon
Route graph capture and replay through a dlopen-based standalone InfiniRT bridge when enabled. Package the standalone InfiniRT runtime as libinfiniops_infinirt.so and ensure libinfiniops.so records that private dependency.
Synchronize RoPE cache copies before the cache is consumed by Ascend kernels. Rename paged attention block_idx locals to page_block_idx to avoid AscendC kernel symbol conflicts while preserving the same block table address calculation. Detect common Ascend driver library layouts before linking libascend_hal.so instead of relying on one hard-coded driver path.
The standalone bridge now calls the InfiniRT C++ runtime API directly, so remove the old loaded-library marker and keep the runtime log aligned with the actual path.
(cherry picked from commit 0287010)
Use --infinirt-root or INFINI_RT_ROOT as the installed InfiniRT prefix for Core targets, install the runtime handle header with Core, and remove stale dependencies on the old in-tree infinirt target. The standalone graph build switch is removed because graph capture is now controlled by USE_INFINIRT_GRAPH and routed through the InfiniRT runtime API directly.
Extend the Core-to-InfiniRT device translation table for Ascend and the other runtime-backed devices. Add explicit stream conversion helpers because Core still stores streams as infinirtStream_t while the InfiniRT C++ runtime API takes infini::rt::runtime::Stream. Include infinirt.h here so the bridge sees the runtime handle typedefs. Use those conversions for stream creation, async allocation, memcpy, memset, event recording, and stream wait calls.
Use the InfiniRT C++ runtime graph API directly for begin/end capture, instantiate, launch, and graph destruction. Drop the old standalone bridge and environment-variable-gated path so graph mode uses the installed InfiniRT runtime whenever USE_INFINIRT_GRAPH is enabled.
a555546 to
1e5e8a7
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Route graph capture and replay through a dlopen-based standalone InfiniRT bridge when enabled.
Package the standalone InfiniRT runtime as libinfiniops_infinirt.so and ensure libinfiniops.so records that private dependency.